---
title: "Teacher UI Rules"
type: concept
created: 2026-04-18
updated: 2026-04-18
sources: ["Sig Dug, 2026-04-18"]
tags: [ui, teacher, ux, progressive-disclosure, design]
---

# Teacher UI Rules

> **⚠️ Non-Negotiable (Sig, 2026-04-18):** The teacher UI must be minimal. If a button is not needed in the first week of teacher use, it should not be in the main UI.

---

## Primary Navigation (5 items max)

```
1. Classes
2. Students
3. Assign / Library
4. Progress
5. Messages  ← optional, shown only when parents are linked
```

These five items are the entire top-level nav. Nothing else belongs there.

---

## Zero-to-First-Reading Flow

A teacher must be able to go from account creation to students reading in four steps — with almost no choices:

```mermaid
flowchart LR
    A["1. Create class"] --> B["2. Add / import students"]
    B --> C["3. Hand out login cards"]
    C --> D["4. Students read"]
```

**Rule:** No configuration gate between these steps. DPA acceptance happens at school setup (once, by school admin). After that — class → students → read. Done.

---

## What Is NEVER Shown in the Default Teacher Flow

The following are system-level concerns. Teachers do not need to see, configure, or think about them:

| Hidden concept | Where it lives instead |
|---|---|
| Entitlement / license state | Shown only when class is full (inline prompt) |
| Billing / payment details | Billing portal, separate from teaching workflow |
| Session policy (shared/personal device) | Auto-set to school-appropriate default; editable only in Advanced Settings |
| Device trust state | Never exposed to teacher |
| GDPR / compliance state | Admin panel only |
| Tenant settings | School admin only, not teacher |
| Advanced class policy flags | Advanced Settings (secondary menu, teacher-initiated) |

---

## Progressive Disclosure Rules

Show additional actions only when they become relevant:

| Action | When it appears |
|---|---|
| "Invite parents" | Only after ≥1 student exists in the class |
| "Buy a class license" / "Upgrade" | Only when class reaches 33-membership cap |
| "Reset PIN" | Only when teacher views a specific student card |
| "Advanced settings" | Behind a secondary ⚙️ menu — never in primary flow |
| "Messages / Parent communication" | Only after parents are linked to at least one student |
| "Print login cards" | Only after students have been added to the class |

---

## Default-First UX

The system auto-sets all defaults. Teachers are never asked to configure these on first use:

| Setting | Default |
|---|---|
| Session policy | Shared-device strict (school standard) |
| Child inactivity timeout | 30 minutes |
| Student login method | Username + 4-digit PIN |
| Parent-link availability | Off until teacher sends invite |
| Reading defaults | Age-appropriate FK level from placement test |
| Class curriculum territory | Inherited from school setup |

Teachers can change any of these via Advanced Settings — but they never have to.

---

## Teacher Dashboard — Answering Only 4 Questions

The teacher home screen answers exactly these four questions. Nothing else.

```
┌─────────────────────────────────────────────────────┐
│  Which class needs attention?                       │
│  → Class selector; flagged classes shown first      │
│                                                     │
│  Which students have not started?                   │
│  → "Not started" list (0 sessions or no placement)  │
│                                                     │
│  Who is struggling?                                 │
│  → Attention list from Learner Bot nightly run      │
│                                                     │
│  What should I assign next?                         │
│  → Top recommendation per class from Learner Bot    │
└─────────────────────────────────────────────────────┘
```

**Design rule (Sig):** Light theme, dense, scannable. Big fonts. Less clicks. No jargon. No empty states — if data is missing, show a prompt (e.g., "No students yet — add your first student").

---

## Attention List Flags (Dashboard)

These are the only flags that surface in the main teacher view:

| Flag | Trigger |
|---|---|
| No placement test | Student logged in but hasn't completed placement |
| Not started | 0 reading sessions |
| Struggling | Quiz avg < 65% on 2+ consecutive quizzes |
| Inactive | No sessions in 4+ days |

Teachers can dismiss, add notes, and mark interventions complete. No other bot-generated data surfaces here — detailed learner profile is one click away on the student card.

---

## Related Pages

- [[concepts/user-flows/Teacher Flow]] — registration, class creation, student import
- [[entities/Teacher Portal]] — service entity, endpoints
- [[summaries/billing-entitlement]] — license model (not surfaced in teacher UI)
- [[summaries/admin-compliance]] — compliance rules (not surfaced in teacher UI)
